package com.example.ananslistviewframe;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

public class AnansListViewFrame extends BaseAdapter {

    String[] names;
    int[] icons;
    int listCont;
    Context context;
    int item ;
    int  tv;
    int img;

    //参数说明：
    // context：上下文 ；_names: listview文本内容构成的数组 ； _icons图片构成的数组；
    // listview总数 如果需要轮播确保设置一个很大的数，如果显示一次，则设置为_names的长度
    // _item每一个项目样式的资源名  _tv  TextView的id名  _img ImageView的id名
    AnansListViewFrame(Context context,String[] _names,int[] _icons,int _listCont,int _item,int _tv,int _img){
        this.context=context;
        this.names=_names;
        this.icons=_icons;
        this.listCont=_listCont;
        this.item=_item;
        this.tv=_tv;
        this.img=_img;
    }

        //得到item的总数
        @Override
        public int getCount() {
            //返回ListView Item条目的总数
            return listCont;
        }

        //得到Item代表的对象
        @Override
        public Object getItem(int position) {
            //返回ListView Item条目代表的对象
            return names[position];
        }

        //得到Item的id
        @Override
        public long getItemId(int position) {
            //返回ListView Item的id
            return position;
        }

        //得到Item的View视图
        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            AnansListViewFrame.ViewHolder holder;
            if (convertView == null) {
                System.out.println("*********"+convertView);
                convertView = LayoutInflater.from(context).
                        inflate(item, parent, false);
                holder = new AnansListViewFrame.ViewHolder();
                holder.mTextView = (TextView) convertView.findViewById(tv);
                holder.imageView = (ImageView) convertView.findViewById(img);
                convertView.setTag(holder);
            } else {
                holder = ( AnansListViewFrame.ViewHolder) convertView.getTag();
                System.out.println("*********"+convertView);
            }
            holder.mTextView.setText(names[position % names.length]);
            holder.imageView.setBackgroundResource(icons[position % names.length]);
            return convertView;
        }

        class ViewHolder {
            TextView mTextView;
            ImageView imageView;
        }

}